package com.xr.mapper;

import com.github.pagehelper.Page;
import com.xr.pojo.CheckGroup;
import com.xr.pojo.CheckItem;
import com.xr.pojo.SetMeal;
import com.xr.pojo.SetMealExample;
import com.xr.query.QueryPageBean;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

public interface SetMealMapper {
    List<Map<String, Object>> findHotSetMeal();
    //通过检查检查组id查询检查项
    List<CheckItem> findCheckItemByCheckGroupId(Integer id);

    //通过套餐id查询检查组
    List<CheckGroup> findCheckGroupListBySetmealId(Integer id);

    //    根据套餐id找出检查组和检查项信息
    SetMeal queryGroupAndItemInfoBySetMealId(Integer id);

    //    根据套餐id找出检查组和检查项信息2
    SetMeal queryGroupAndItemInfoBySetMealId2(Integer id);

    //    查看是否有订单使用
    Integer isUseInSetMealOrder(Integer id);


    SetMeal findById(Integer id);

    //    删除关联的检查组
    void deleteRelation(Integer id);

    //根据套餐id找检查组id
    List<Integer> selectGroupIdByMealId(Integer MealId);

    //    分页查询+条件
    Page<SetMeal> selectByQueryString(String queryString);

    //    添加
    void add(SetMeal setMeal);

    //    设置套餐和检查组的关系
    void setSetMealAndCheckGroup(Map map);

    long countByExample(SetMealExample example);

    int deleteByExample(SetMealExample example);

    int deleteByPrimaryKey(Integer id);

    int insert(SetMeal record);

    int insertSelective(SetMeal record);

    List<SetMeal> selectByExample(SetMealExample example);

    SetMeal selectByPrimaryKey(Integer id);

    int updateByExampleSelective(@Param("record") SetMeal record, @Param("example") SetMealExample example);

    int updateByExample(@Param("record") SetMeal record, @Param("example") SetMealExample example);

    int updateByPrimaryKeySelective(SetMeal record);

    int updateByPrimaryKey(SetMeal record);

    List<Map<String, Object>> findSetmealCount();
}